﻿namespace MainGame.GameScreens
{
    using Microsoft.Xna.Framework;
    using Microsoft.Xna.Framework.Content;
    using Microsoft.Xna.Framework.Graphics;

    using XGameLibrary.Controls;
    using XGameLibrary.ScreenManager;

    public abstract partial class BaseGameState : GameState
    {
        public BaseGameState(Game game, GameStateManager manager) :
            base(game, manager)
        {
            this.GameRef = (Game1)game;
        }

        protected Game1 GameRef { get; set; }

        protected ControlManager ControlManager { get; set; }

        protected override void LoadContent()
        {
            ContentManager content = Game.Content;

            SpriteFont menuFont = content.Load<SpriteFont>(@"Fonts\ControlFont");

            this.ControlManager = new ControlManager(menuFont);

            base.LoadContent();
        }
    }
}
